<template>
  <div>
    <h1>人员列表</h1>
    <h3 style="color: red;">calculation组件求和为：{{sum}}</h3>
    <h3>列表中第一个人的名字是：{{firstName}}</h3>
    <input type="text" v-model="name">&nbsp;<button @click="addPerson">添加</button>
    &nbsp;
    <button @click="addWang">添加一个姓王的人</button> &nbsp;
    <button @click="addPersonServer">添加一个随机的人名</button>
    <ul>
      <li v-for="p in personList" :key="p.id">{{p.name}}</li>
    </ul>
  </div>
</template>

<script>
import {nanoid} from 'nanoid'
    export default {
        name: "Persons",
        data(){
          return{
            name:""
          }
        },
        computed:{
          personList(){
            return this.$store.state.personAbout.personList
          },
          sum(){
            return this.$store.state.countAbout.sum
          },
          firstName(){
            return this.$store.getters['personAbout/firstPersonName']
          }
        },
        methods:{
          addPerson(){
            var personObj={id:nanoid(),name:this.name}
            this.$store.commit("personAbout/AddPerson",personObj)
            this.name=""
          },
          addWang(){
            var personObj={id:nanoid(),name:this.name}
            this.$store.dispatch("personAbout/addPersonWang",personObj)
            this.name=""
          },
          addPersonServer(){
            this.$store.dispatch("personAbout/addPerson")
          }
        }
    }
</script>

<style scoped>

</style>
